1. Field of the Invention
The invention relates generally to user authentication systems, used for computer and network security access control systems; and more particularly to improved “what user knows”-based authentication factors, in client/server network architectures and other architectures.
2. Description of Related Art
The most widely used user authentication method is referred to herein as the Standard Static Password Recognition (SSPR) algorithm. The SSPR algorithm simply requires a user to enter a user name and a password for authentication. This is a “what user knows” type authentication factor. Other types of authentication factors are not as widely deployed, and include “what user has” (card key), and “what user is” (fingerprint). “What user has” and “what user is” type authentication factors require special hardware devices, such as card readers, tokens, fingerprint sensors and the like at the input terminals, and therefore are typically much more expensive and impractical than a “what user knows” type. “What user knows” type authentication factors are limited by the ability of a person to remember the factor involved. For example, typical users select passwords for SSPR within a “comfort level” of complexity for memorization, usually in the range from one to seven (or eight) alphanumeric characters long. Often, the password is a simple word or an integer number (like, “patriot”, “London”, 11223344, etc.). Technological progress and demands of contemporary industrial society security lead to at least two serious issues related to the safety of typical passwords in SSPR, including:                1. An intruder may employ a brute-force technique, known as a dictionary attack, of successively trying all the words in an exhaustive list against a password file. Each consecutive tried word gets encrypted using the same algorithm that the login program under attack is using. Dictionary attacks, applied either to hashed passwords, intercepted on communication lines, or directly at the password entry devices, allow for quite easy password re-engineering.        2. Another issue is related to password combinatorial capacities of typical passwords that are within a “comfort level” of complexity for most users. For larger organizations, a range of passwords within such comfort level may not be sufficient.        
Typical enterprise level solutions (enterprise-wide IT department policies) in accounting for items 1 and 2 above, require users to have at least 4–5 (or more) alphanumeric case sensitive character passwords, which should not to be simple words (but rather something, like: 1patRIOT, Lon7Don, etc.). This approach leads to multiple password resets by users that forget or lose their passwords, which resets have become quite costly and annoying hurdles for organizations and enterprises (or service companies) striving for higher security levels.
Objective consideration shows that the minimum number of characters in a password is limited at a minimum by two factors: necessary combinatorial capacities and high susceptibility to combinatorial attacks. The maximum number of characters in static passwords is limited by users' “comfort level” for memorization. Eventually, one ends up with 4–8 alphanumeric characters range (no character case sensitivity), or 3–7 alphanumeric characters (having character case sensitivity). Until recently, organizations and enterprises (or service companies) have tolerated these well known deficiencies due to relative simplicity, low cost, and wide spread adoption of SSPR user authentication technology.
Meanwhile, emerging requirements are forcing the security industry (Authentication-Authorization-Accounting (AAA or 3A) programs, Encryption, Enterprise Software, Financial Service Providers, etc.) to re-consider SSPR based user authentication technology:                1. The first issue is progress in ASIC chip data-processing power, which makes combinatorial attacks in breaking static passwords much more efficient. The apparent line of defense would be increasing static password lengths. Unfortunately, as we already discussed, this capability is already quite limited by users' “comfort level”. So, SSPR based security systems appeared to be in between a rock and a hard place, as the minimum password length (3–4 alphanumeric characters) must be increased to sustain more and more efficient combinatorial attacks, whereas the entire static password length has to be remained unchanged and limited to 6–7 alphanumeric characters range due to human being memory limitations.        2. Also, a number of security problems arising in large scale systems, like deficiencies in state/country voting systems, credit card fraud, privacy and security breaches at health data banks and at financial service organizations, Microsoft 2000 and XP operating systems' vulnerabilities, etc., have led to the necessity to improve or re-build large scale security systems. Evolution of these systems will eventually require much higher static password combinatorial capacity, than may be required at an organization/enterprise level. Assuming, about 10 million users at a state level and about 100 million users nation wide, passwords having at least 5 characters are needed for a state-wide system, and passwords having at least 6 characters are needed for country wide password based security systems (assuming no character case sensitivity, or 4 and 5 characters respectively for a character sensitive case). As processing power in the hands of hacker increases, the minimum password size for a secure system approaches or exceeds the “comfort level”.        3. Once national security systems, databases and various markets get integrated internationally (say US and EU), the number of users requiring unique passwords increases to the point that the combinatorial capacity of such systems would require at least 6 alphanumeric characters (case sensitive passwords), or 7 for systems without character case sensitivity. This is already at the boundary of users' “comfort level”.        
Accordingly, SSPR is reaching the limits of its practical application for large-scale static password based security systems. That accounts for serious attention recently given to alternative high security user authentication methods, like biometrics, tokens, and smart cards. Of these techniques, biometrics is the only true user authentication method. The other ones can be a part of user authentication systems, but are insufficient by themselves.
Unfortunately, biometrics is great deal more expensive and difficult to deploy, than SSPR based systems. There is, also, a significant public reluctance against biometric authentication methods due to religious and cultural concerns. Another strong concern, if using biometrics, is private biometrics data safety. Once stolen, the biometric data can be re-used forever to impersonate the individual that the data is taken from.
B. Attacks Against SSPR Based Systems
Besides several issues listed above, static password technology is particularly vulnerable to a number of attacks, and defenses against such attacks have limited scope. Some of the possible attacks and defenses to the attacks, include the following:                1. Password Guessing                    An intruder tries to log in with a real user name while making password guesses based on the user personal knowledge.            Defense-automatic session lock out after several failed attempts; possible account revoke or a forced password reset                        2. Log-In Session Videotaping                    Widely available micro audio and visual sensors, and other tools, facilitate hidden observations. Video- and/or audio-recording is possible from a significant distance and any time of the day, jeopardizing secret passwords or PINs entered by computer or network online users at public locations (ATM machines; customers at Point-of-Sales; Internet terminals offered at various conferences, cafes, libraries; employees sharing large offices with desktop computer terminals within everybody's visual reach, and other places).            Defense-no standard protection technology except being vigilant.                        3. Shoulder Surfing                    An intruder nearby the legitimate user watches password entering.            Defense-no standard protection technology except displaying echo dummy characters and different number of them.                        4. Social Engineering                    An intruder pretends to be an administrator or a real user asking for a password disclosure/reset.            Defense-non disclosure/reset policy.                        5. Trojan Horse                    Hidden downloaded software looking like a standard login session but collecting instead user names and passwords.            Defense-some protection is possible for vigilant users and administrators with antivirus protection and intrusion detection software.                        6. Keystroke Monitoring                    Secretly downloaded software keeping a log of all keystrokes            Defense-employees are defenseless, if the employer is the attack originator; legal protection is a possible alternative.                        7. Con Artists                    Can figure out the password while being quite far from the real user and having special hearing/observation skills/training.            Defense-no standard protection technology except being vigilant.                        8. Network Sniffing                    An intruder records user names and passwords while in transit on communication lines.            Defense-encryption protocols: Kerberos, SSL, IPsec; challenge response, one time passwords with tokens or smart cards; biometrics instead of passwords.                        9. Keyboard Buffer Memory Sniffing                    Some desktop operating systems do not have hardware protection against intruders' software copying passwords from a keyboard buffer.            Defense-no standard protection except making hardware protection at a microprocessor level.                        10. Password File Theft                    Every user name has a password entry in a hashed form which can be read.            Defense-Needham-Guy algorithm is used: each password is an encryption key for itself to be hash encrypted.                        
All attacks above can be separated out into three different categories: communication line attacks (8, dictionary attack), attacks at input/output devices (1, 2, 3, 4, 5, 6, 7, 9), and database attacks (10).
C. Enhanced Security Requirements
As manifested by the list of attacks above, SSPR security technology is vulnerable to well known security breaches. SSPR is based on “what user knows”, as opposed to other authentication factors based on “what user has” (for instance, hardware tokens), or “what user is” (such as biometric traits, like, fingerprints, face, eye, and voice recognition). It is well known, “what user knows”-based authentication systems are the most attractive due to being cheap, user friendly, easily electronically deployable, and requiring no additional hardware, as opposed to other authentication factors. That is why numerous attempts have been made to improve SSPR technology and satisfy the requirements of the Internet mass transaction and e-commerce community. Several enhanced user authentication security requirements include the following:                1. Even without encryption, authentication secrets (like passwords or PINs) shared between a client and a server should not be revealed, if the data are intercepted by an intruder, while in transit on communication lines.        2. Authentication system is to demonstrate strong resilience against attacks at input/output devices (see, for example, B1–B7, B9).        3. “What user knows”-based authentication system should use secret knowledge shared with a server, which is easier than, or of comparable difficulty for a human being to remember as compared to static passwords. Otherwise, the system does not have a chance to be widely adopted.        4. Client and server have to perform mutual authentication to each other.        5. Client should be able to get authenticated to by server and get access to protected resources from any computer platform on the Internet.        6. Authentication system should have zero footprint downloaded software on the client computer platform.        7. No additional hardware as compared to SSPR technology.        8. Easy and cheap match to any other authentication factor in building “strong authentication” security systems (having two or more authentication factors).        9. Compatible with security of message-oriented Web Services technologies (like SOAP, SAML, XML, WSDL, etc.).        
Representative prior art authentication technologies are described in Juels, US 2002/0029341; Boroditsky, U.S. Pat. No. 6,327,659; Boroditsky, U.S. Pat. No. 6,332,192; Azuma, US 2001/0039618; Jalili, U.S. Pat. No. 6,209,104; Ozzie, U.S. Pat. No. 5,664,099; Davies, U.S. Pat. No. 5,608,387; Blonder, U.S. Pat. No. 5,559,961; Baker, U.S. Pat. No. 5,428,084; Cottrell, U.S. Pat. No. 5,465,084; and Martino U.S. Pat. No 5,276,314.
Many approaches promise certain improvements toward meeting some of the requirements (1–9) listed above. However, no known approach (except SSPR) has experienced wide public and industry acceptance. Further, none allow for a comprehensively secure system and method of user authentication, covering the entire list of requirements listed above. Thus, what is needed is an authentication system and method allowing for highly elevated practical security against most of known attacks on communication lines and at data entry devices while assuring sufficient enough combinatorial capacity. In addition, user interfaces for such new authentication systems which contribute to ease of use and security are required.